package com.example.animator;

import androidx.appcompat.app.AppCompatActivity;

import android.animation.ObjectAnimator;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
    /*
    动画分三类：1，View动画，又称Tween动画。2，frame动画（帧动画），又叫drawable动画。3，属性动画，即property animation
     */

    private TextView textView;
    //translationX :表示在 X 轴上的平移距离,以当前控件为原点，向右为正方向
    //translationY :表示在 Y 轴上的平移距离，以当前控件为原点，向下为正方向

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        textView = findViewById(R.id.tv);

        findViewById(R.id.btn1).setOnClickListener(new View.OnClickListener() {//->200
            @Override
            public void onClick(View v) {
                ObjectAnimator animator = ObjectAnimator.ofFloat(textView, "translationX", 200);//200个像素(我的手机宽1080个像素
                animator.setDuration(3000);
                animator.start();
            }
        });

        findViewById(R.id.btn2).setOnClickListener(new View.OnClickListener() {//->-200
            @Override
            public void onClick(View v) {
                ObjectAnimator animator = ObjectAnimator.ofFloat(textView, "translationX", -200);
                animator.setDuration(3000);
                animator.start();
            }
        });

        findViewById(R.id.btn3).setOnClickListener(new View.OnClickListener() {//->0
            @Override
            public void onClick(View v) {
                ObjectAnimator animator = ObjectAnimator.ofFloat(textView, "translationX", 0);
                animator.setDuration(3000);
                animator.start();
            }
        });

        findViewById(R.id.btn4).setOnClickListener(new View.OnClickListener() {//->200,->0(如果有两个值，第一个会瞬移过去
            @Override
            public void onClick(View v) {
                ObjectAnimator animator = ObjectAnimator.ofFloat(textView, "translationX", 200, 0);
                animator.setDuration(3000);
                animator.start();
            }
        });

        findViewById(R.id.btn5).setOnClickListener(new View.OnClickListener() {//->0,->200,->0
            @Override
            public void onClick(View v) {
                ObjectAnimator animator = ObjectAnimator.ofFloat(textView, "translationX", 0, 200, 0);
                animator.setDuration(3000);
                animator.start();
            }
        });
    }
}